package com.ruoyi.service;


import com.ruoyi.domain.AdvIncome;
import com.ruoyi.domain.AdvIncomedetail;
import com.ruoyi.domain.AdvMembers;
import com.ruoyi.domain.AdvOrdersdetail;

import java.io.IOException;
import java.security.GeneralSecurityException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.SignatureException;
import java.util.List;
import java.util.Map;

public interface WxPayService {

    Map<String, Object> jsapiPay(AdvOrdersdetail advOrdersdetail) throws IOException, NoSuchAlgorithmException, SignatureException, InvalidKeyException;

    void processOrder(Map<String, Object> bodyMap) throws GeneralSecurityException;

    void checkOrderStatus(String orderNo) throws IOException;

    boolean checkOrderShareStatus(String orderNo,String memberId,String transactionId) throws IOException;

    String queryOrderByShare(String orderNo,String transactionId) throws IOException;

    String queryOrder(String orderNo) throws IOException;

    void refund(AdvOrdersdetail advOrdersdetail) throws Exception;

    void processRefund(Map<String, Object> bodyMap) throws Exception;

    void NotReFunds(AdvOrdersdetail advOrdersdetail);

    boolean exePayShare(AdvIncome advIncome,List<AdvIncomedetail> list) throws IOException;

    void exeAddShare(AdvMembers advMembers) throws IOException;

}
